jquery教程

推荐列表 站点导航

当前位置:首页 > jquery > jquery教程 >

js 去除数组中的重复值的实现方法

来源:网络整理  作者:  发布时间:2020-12-22 00:38
分享一段js代码,其实是一个题目的答案了,用js去除数组中的重复值,有需要的朋友参考下吧。...
传入数组 a = [0, 8, 5, 4, 78, 8, 90, 4, 'a', 'b', 'a'];

综合比较后,思路3胜出,用在了以上的js 去除数组中重复值的脚本中。

题目:自定义一个js函数,去掉给定数组中的重复值。
例如:
思路1,将目标数组进行排序,然后依序删除重复的数组,不过此种方法在删除重复元素的同时也改变数组原有元素的属性,不合要求,略过。
思路3,跟思路2类似,不过充分利用了js对象的属性,新建一个空对象,将a中的元素作为属性添加到该对象中,在添加之前检测该属性是否已存在。
要求返回:[0,4,5,8,78,90,a,b]

解答:

全部添加完后将该对象的属性依序放到数组中,return。

思路2,新建一个数组b,将a中的元素push到b中,但是在push之前检查该元素是否存在。此思路的时间复杂度是n*n,简单而笨重的方法,仅供参考。
<script> //去除数组中的重复值 var getNR = function(src) { src = src || []; var res = {}; var curr = []; var i, j = 0,temp, name; for (i = 0; i < src.length; i++) { temp = src[i]; if (res[temp]) { //do noting } else { res[temp] = 1; } } for (name in res) { if (res.hasOwnProperty(name)) { curr[j++] = name; } } return curr; }; </script>

代码思路分析:

相关热词: 方法

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/jq/jc/6878.shtml

最新文章
PHP识别相片是否是颠倒的 PHP识别相片是否是颠倒的

时间:2020-12-28

python编程有哪些ide python编程有哪些ide

时间:2020-12-28

python开发工程师是做什么 python开发工程师是做什么

时间:2020-12-28

php构造函数的作用 php构造函数的作用

时间:2020-12-28

php怎么跟数据库连接 php怎么跟数据库连接

时间:2020-12-28

php实现顺序线性表 php实现顺序线性表

时间:2020-12-28

Python多重继承中的菱形继 Python多重继承中的菱形继

时间:2020-12-28

php中break的作用 php中break的作用

时间:2020-12-28

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

js 去除数组中的重复值的实现方法

2020-12-22 编辑:

传入数组 a = [0, 8, 5, 4, 78, 8, 90, 4, 'a', 'b', 'a'];

综合比较后,思路3胜出,用在了以上的js 去除数组中重复值的脚本中。

题目:自定义一个js函数,去掉给定数组中的重复值。
例如:
思路1,将目标数组进行排序,然后依序删除重复的数组,不过此种方法在删除重复元素的同时也改变数组原有元素的属性,不合要求,略过。
思路3,跟思路2类似,不过充分利用了js对象的属性,新建一个空对象,将a中的元素作为属性添加到该对象中,在添加之前检测该属性是否已存在。
要求返回:[0,4,5,8,78,90,a,b]

解答:

全部添加完后将该对象的属性依序放到数组中,return。

思路2,新建一个数组b,将a中的元素push到b中,但是在push之前检查该元素是否存在。此思路的时间复杂度是n*n,简单而笨重的方法,仅供参考。
<script> //去除数组中的重复值 var getNR = function(src) { src = src || []; var res = {}; var curr = []; var i, j = 0,temp, name; for (i = 0; i < src.length; i++) { temp = src[i]; if (res[temp]) { //do noting } else { res[temp] = 1; } } for (name in res) { if (res.hasOwnProperty(name)) { curr[j++] = name; } } return curr; }; </script>

代码思路分析:

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/jq/jc/6878.shtml

相关文章

风云图片

推荐阅读

返回jquery教程频道首页